[DEBUG] 2020-11-17 15:34:37,337 method:org.mybatis.spring.SqlSessionUtils.sessionHolder(SqlSessionUtils.java:163)
Fetched SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6edcd0d8] from current transaction
[DEBUG] 2020-11-17 15:34:37,337 method:org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug(BaseJdbcLogger.java:137)
==>  Preparing: insert into invoice values(?,?,?,?)
[DEBUG] 2020-11-17 15:34:37,337 method:org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug(BaseJdbcLogger.java:137)
==> Parameters: 6075f4c5-48e7-4278-bdb0-5a46dea3a2a0(String), 1000(String), 500(Integer), http://www.lovo.com/invoice.pdf(String)
[DEBUG] 2020-11-17 15:34:37,337 method:org.apache.ibatis.logging.jdbc.BaseJdbcLogger.debug(BaseJdbcLogger.java:137)
<==    Updates: 1
[DEBUG] 2020-11-17 15:34:37,346 method:org.mybatis.spring.SqlSessionUtils.closeSqlSession(SqlSessionUtils.java:186)
Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6edcd0d8]
[DEBUG] 2020-11-17 15:34:37,346 method:com.lovo.aspect.LogAspect.sayAround(LogAspect.java:41)
退出方法：void com.lovo.dao.InvoiceDAO.insert(InvoiceDO)
[ERROR] 2020-11-17 15:34:37,346 method:com.lovo.aspect.LogAspect.sayAround(LogAspect.java:38)
抛出异常：void com.lovo.service.InvoiceService.create(String,int)
[DEBUG] 2020-11-17 15:34:37,346 method:org.mybatis.spring.SqlSessionUtils$SqlSessionSynchronization.beforeCompletion(SqlSessionUtils.java:310)
Transaction synchronization deregistering SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6edcd0d8]
[DEBUG] 2020-11-17 15:34:37,346 method:org.mybatis.spring.SqlSessionUtils$SqlSessionSynchronization.beforeCompletion(SqlSessionUtils.java:315)
Transaction synchronization closing SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6edcd0d8]
[DEBUG] 2020-11-17 15:34:37,346 method:org.springframework.transaction.support.AbstractPlatformTransactionManager.processRollback(AbstractPlatformTransactionManager.java:833)
Initiating transaction rollback
[DEBUG] 2020-11-17 15:34:37,346 method:org.springframework.jdbc.datasource.DataSourceTransactionManager.doRollback(DataSourceTransactionManager.java:341)
Rolling back JDBC transaction on Connection [com.mysql.cj.jdbc.ConnectionImpl@1b005a0b]
[DEBUG] 2020-11-17 15:34:37,356 method:org.springframework.jdbc.datasource.DataSourceTransactionManager.doCleanupAfterCompletion(DataSourceTransactionManager.java:385)
Releasing JDBC Connection [com.mysql.cj.jdbc.ConnectionImpl@1b005a0b] after transaction
[DEBUG] 2020-11-17 15:37:44,365 method:org.springframework.context.support.AbstractApplicationContext.prepareRefresh(AbstractApplicationContext.java:596)
Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@54c562f7
[DEBUG] 2020-11-17 15:37:44,381 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
[DEBUG] 2020-11-17 15:37:44,443 method:org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:435)
Identified candidate component class: file [D:\edu\Java\project\J177\spring_j177\lesson3\target\classes\com\lovo\aspect\LogAspect.class]
[DEBUG] 2020-11-17 15:37:44,443 method:org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:435)
Identified candidate component class: file [D:\edu\Java\project\J177\spring_j177\lesson3\target\classes\com\lovo\config\DBProperties.class]
[DEBUG] 2020-11-17 15:37:44,459 method:org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:435)
Identified candidate component class: file [D:\edu\Java\project\J177\spring_j177\lesson3\target\classes\com\lovo\service\InvoiceService.class]
[DEBUG] 2020-11-17 15:37:44,459 method:org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:435)
Identified candidate component class: file [D:\edu\Java\project\J177\spring_j177\lesson3\target\classes\com\lovo\service\UserService.class]
[DEBUG] 2020-11-17 15:37:44,506 method:org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:435)
Identified candidate component class: file [D:\edu\Java\project\J177\spring_j177\lesson3\target\classes\com\lovo\dao\InvoiceDAO.class]
[DEBUG] 2020-11-17 15:37:44,506 method:org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.scanCandidateComponents(ClassPathScanningCandidateComponentProvider.java:435)
Identified candidate component class: file [D:\edu\Java\project\J177\spring_j177\lesson3\target\classes\com\lovo\dao\UserDAO.class]
[DEBUG] 2020-11-17 15:37:44,506 method:org.mybatis.spring.mapper.ClassPathMapperScanner.processBeanDefinitions(ClassPathMapperScanner.java:180)
Creating MapperFactoryBean with name 'invoiceDAO' and 'com.lovo.dao.InvoiceDAO' mapperInterface
[DEBUG] 2020-11-17 15:37:44,506 method:org.mybatis.spring.mapper.ClassPathMapperScanner.processBeanDefinitions(ClassPathMapperScanner.java:216)
Enabling autowire by type for MapperFactoryBean with name 'invoiceDAO'.
[DEBUG] 2020-11-17 15:37:44,506 method:org.mybatis.spring.mapper.ClassPathMapperScanner.processBeanDefinitions(ClassPathMapperScanner.java:180)
Creating MapperFactoryBean with name 'userDAO' and 'com.lovo.dao.UserDAO' mapperInterface
[DEBUG] 2020-11-17 15:37:44,506 method:org.mybatis.spring.mapper.ClassPathMapperScanner.processBeanDefinitions(ClassPathMapperScanner.java:216)
Enabling autowire by type for MapperFactoryBean with name 'userDAO'.
[DEBUG] 2020-11-17 15:37:44,584 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.context.event.internalEventListenerProcessor'
[DEBUG] 2020-11-17 15:37:44,584 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.context.event.internalEventListenerFactory'
[DEBUG] 2020-11-17 15:37:44,584 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.transaction.config.internalTransactionalEventListenerFactory'
[DEBUG] 2020-11-17 15:37:44,584 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.context.annotation.internalAutowiredAnnotationProcessor'
[DEBUG] 2020-11-17 15:37:44,599 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.context.annotation.internalCommonAnnotationProcessor'
[DEBUG] 2020-11-17 15:37:44,599 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.aop.config.internalAutoProxyCreator'
[DEBUG] 2020-11-17 15:37:44,646 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'applicationConfig'
[DEBUG] 2020-11-17 15:37:44,646 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.transaction.config.internalTransactionAdvisor'
[DEBUG] 2020-11-17 15:37:44,646 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration'
[DEBUG] 2020-11-17 15:37:44,677 method:org.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvice(ReflectiveAspectJAdvisorFactory.java:258)
Found AspectJ method: public java.lang.Object com.lovo.aspect.LogAspect.sayAround(org.aspectj.lang.ProceedingJoinPoint) throws java.lang.Throwable
[DEBUG] 2020-11-17 15:37:44,677 method:org.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvice(ReflectiveAspectJAdvisorFactory.java:258)
Found AspectJ method: public void com.lovo.aspect.LogAspect.sayHello(org.aspectj.lang.JoinPoint)
[DEBUG] 2020-11-17 15:37:44,677 method:org.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvice(ReflectiveAspectJAdvisorFactory.java:258)
Found AspectJ method: public void com.lovo.aspect.LogAspect.sayBye(org.aspectj.lang.JoinPoint)
[DEBUG] 2020-11-17 15:37:44,677 method:org.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvice(ReflectiveAspectJAdvisorFactory.java:258)
Found AspectJ method: public void com.lovo.aspect.LogAspect.sayError(org.aspectj.lang.JoinPoint)
[DEBUG] 2020-11-17 15:37:44,865 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'transactionAttributeSource'
[DEBUG] 2020-11-17 15:37:44,912 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
Creating shared instance of singleton bean 'transactionInterceptor'
[DEBUG] 2020-11-17 15:37:44,912 method:org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:805)
Autowiring by type from bean name 'transactionInterceptor' via factory method to bean named 'transactionAttributeSource'
